iT邦幫忙

2023 iThome 鐵人賽

DAY 22
0
自我挑戰組

python-資料分析與機器學習系列 第 22

DAY22-自然語言處理(jieba模組)

  • 分享至 

  • xImage
  •  

jieba模組是一個用於中文分詞的Python庫,特別設計用於將中文切割成單詞或詞語的工具。jieba模組可以幫助你處理中文數據,使其更容易進行文本分析、情感分析、關鍵詞提取等自然語言處理任務。

斷詞用法
第一種:

import jieba
breakword = jieba.cut('我要喝湯') 
print(list(breakword))

['我要', '喝湯']

第二種:

import jieba
breakword = jieba.cut('我要喝湯') 

print('|'.join(breakword))

我要|喝湯

斷詞模式
精確模式:最精準,適合文件分析

text = "我今天要到松山機場"
seg_list = jieba.cut(text, cut_all=False)  # 使用精確模式分詞

# 輸出分詞結果
print(" / ".join(seg_list))

我 / 今天 / 要 / 到 / 松山 / 機場

全文模式:速度最快

text = "我今天要到松山機場"
seg_list = jieba.cut(text, cut_all=True)  # 使用全文模式分詞

# 輸出分詞結果
print(" / ".join(seg_list))

我 / 今天 / 要到 / 松山 / 機 / 場

搜尋引擎模式:適用於需要關鍵詞提取的場景

text = "我今天要到松山機場"
seg_list = jieba.cut_for_search(text)  # 使用搜索引擎模式分詞

# 輸出分詞結果
print(" / ".join(seg_list))

我 / 今天 / 要 / 到 / 松山 / 機場

更改詞庫
因為jieba是大陸開發的,因此斷詞依據跟台灣有所不同,因此需要下載繁體中文詞庫。
網址:https://raw.githubusercontent.com/fxsjy/jieba/master/extra_dict/dict.txt.big
在網頁中按另存新檔

jieba.set_dictionary('/content/raw.githubusercontent.com_fxsjy_jieba_master_extra_dict_dict.txt.big.txt')

text = "我今天要到松山機場"
seg_list = jieba.cut(text, cut_all=False)  # 使用精確模式分詞

# 輸出分詞結果
print(" / ".join(seg_list))

我 / 今天 / 要 / 到 / 松山機場

在這裡松山幾場就被視為是一個詞。

---20231007---


上一篇
DAY21-循環神經網路(RNN)(下)
下一篇
DAY23-自然語言處理(wordcloud模組)
系列文
python-資料分析與機器學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言